package com.galangel.bookservice.domain.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.galangel.bookservice.domain.pojo.Tag;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class BookInfoVo {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "书籍isbn")
    @TableId(value = "isbn", type = IdType.AUTO)
    private String isbn;

    @ApiModelProperty(value = "主书名")
    private String title;

    @ApiModelProperty(value = "副标题")
    private String subtitle;

    @ApiModelProperty(value = "出版社全称")
    private String publisher;

    @ApiModelProperty(value = "出版日期（无具体日时默认存储当月1号）")
    private LocalDate publishDate;

    @ApiModelProperty(value = "装帧类型：平装/精装/线装/特装版")
    private String bindingType;

    @ApiModelProperty(value = "原价")
    private BigDecimal originalPrice;

    @ApiModelProperty(value = "封面图片URL")
    private String coverUrl;

    @ApiModelProperty(value = "内容简介（200-500字）和目录")
    private String descriptionContents;

    @ApiModelProperty(value = "作者")
    private String author;

    @ApiModelProperty(value = "译者")
    private String translator;

    private List<Tag> tags;
}
